package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 采购单详情对象 list_detail
 *
 * @author ruoyi
 * @date 2025-08-22
 */
public class ListDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 订单ID，对应LIST表 */
    @Excel(name = "订单ID，对应LIST表")
    private Long listid;

    /** 商品ID，对应goods表 */
    @Excel(name = "商品ID，对应goods表")
    private Long goodsid;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 商品数量 */
    @Excel(name = "商品数量")
    private Double goodsNum;

    /** 商品单位 */
    private String goodsUnitStr;

    /** 商品单位 */
    @Excel(name = "商品单位")
    private String goodsUnit;

    /** 商品价格 */
    @Excel(name = "商品价格")
    private Double price;

    /** 总价格 */
    @Excel(name = "总价格")
    private Double totalPrice;

    /** 商家备注 */
    @Excel(name = "商家备注")
    private String remarkShop;

    /** 供应商备注 */
    @Excel(name = "供应商备注")
    private String remarkSupply;

    /** 商品实际数量 */
    @Excel(name = "商品实际数量")
    private Double goodsNumReal;

    /** 商品真实价格 */
    @Excel(name = "商品真实价格")
    private Double realPrice;

    /** 最终实际价格 */
    @Excel(name = "最终实际价格")
    private Double totalPriceReal;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date ctime;

    /** 商品是否满足 */
    private String isfill;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 退货数量 */
    @Excel(name = "退货数量")
    private Double refundNum;

    /** 退货价格 */
    @Excel(name = "退货价格")
    private Double refundPrice;

    /** 退货说明 */
    @Excel(name = "退货说明")
    private String refundRemark;
    private String statusin;

    private Long supplyid;

    /** 设备ID */
    @Excel(name = "设备ID")
    private Long devidId;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String devidName;

    /** 验货时的照片 */
    @Excel(name = "验货时的照片")
    private String devicePic;
    /** 验货说明 */
    @Excel(name = "验货说明")
    private String checkRemark;

    /** 验货人 */
    @Excel(name = "验货人")
    private String checkUser;

    /** 是否支付 */
    @Excel(name = "是否支付")
    private String ispay;

    public String getStatusin() {
        return statusin;
    }

    public void setStatusin(String statusin) {
        this.statusin = statusin;
    }

    public Long getSupplyid() {
        return supplyid;
    }

    public void setSupplyid(Long supplyid) {
        this.supplyid = supplyid;
    }

    public String getGoodsUnitStr() {
        return goodsUnitStr;
    }

    public void setGoodsUnitStr(String goodsUnitStr) {
        this.goodsUnitStr = goodsUnitStr;
    }

    public String getIspay() {
        return ispay;
    }

    public void setIspay(String ispay) {
        this.ispay = ispay;
    }

    /** 图片地址 */
    private String imageUrl;

    private double stock;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setListid(Long listid)
    {
        this.listid = listid;
    }

    public Long getListid()
    {
        return listid;
    }

    public void setGoodsid(Long goodsid)
    {
        this.goodsid = goodsid;
    }

    public Long getGoodsid()
    {
        return goodsid;
    }

    public void setGoodsName(String goodsName)
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName()
    {
        return goodsName;
    }

    public void setGoodsNum(Double goodsNum)
    {
        this.goodsNum = goodsNum;
    }

    public Double getGoodsNum()
    {
        return goodsNum;
    }

    public void setGoodsUnit(String goodsUnit)
    {
        this.goodsUnit = goodsUnit;
    }

    public String getGoodsUnit()
    {
        return goodsUnit;
    }

    public void setPrice(Double price)
    {
        this.price = price;
    }

    public Double getPrice()
    {
        return price;
    }

    public void setTotalPrice(Double totalPrice)
    {
        this.totalPrice = totalPrice;
    }

    public Double getTotalPrice()
    {
        return totalPrice;
    }

    public void setRemarkShop(String remarkShop)
    {
        this.remarkShop = remarkShop;
    }

    public String getRemarkShop()
    {
        return remarkShop;
    }

    public void setRemarkSupply(String remarkSupply)
    {
        this.remarkSupply = remarkSupply;
    }

    public String getRemarkSupply()
    {
        return remarkSupply;
    }

    public void setGoodsNumReal(Double goodsNumReal)
    {
        this.goodsNumReal = goodsNumReal;
    }

    public Double getGoodsNumReal()
    {
        return goodsNumReal;
    }

    public void setRealPrice(Double realPrice)
    {
        this.realPrice = realPrice;
    }

    public Double getRealPrice()
    {
        return realPrice;
    }

    public void setTotalPriceReal(Double totalPriceReal)
    {
        this.totalPriceReal = totalPriceReal;
    }

    public Double getTotalPriceReal()
    {
        return totalPriceReal;
    }

    public void setCtime(Date ctime)
    {
        this.ctime = ctime;
    }

    public Date getCtime()
    {
        return ctime;
    }

    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    public double getStock() {
        return stock;
    }

    public void setStock(double stock) {
        this.stock = stock;
    }

    public String getIsfill() {
        return isfill;
    }

    public void setIsfill(String isfill) {
        this.isfill = isfill;
    }

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public Double getRefundNum() {
        return refundNum;
    }

    public void setRefundNum(Double refundNum) {
        this.refundNum = refundNum;
    }

    public Double getRefundPrice() {
        return refundPrice;
    }

    public void setRefundPrice(Double refundPrice) {
        this.refundPrice = refundPrice;
    }

    public String getRefundRemark() {
        return refundRemark;
    }

    public void setRefundRemark(String refundRemark) {
        this.refundRemark = refundRemark;
    }

    public String getCheckRemark() {
        return checkRemark;
    }

    public void setCheckRemark(String checkRemark) {
        this.checkRemark = checkRemark;
    }

    public String getCheckUser() {
        return checkUser;
    }

    public void setCheckUser(String checkUser) {
        this.checkUser = checkUser;
    }

    public Long getDevidId() {
        return devidId;
    }

    public void setDevidId(Long devidId) {
        this.devidId = devidId;
    }

    public String getDevidName() {
        return devidName;
    }

    public void setDevidName(String devidName) {
        this.devidName = devidName;
    }

    public String getDevicePic() {
        return devicePic;
    }

    public void setDevicePic(String devicePic) {
        this.devicePic = devicePic;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("listid", getListid())
                .append("goodsid", getGoodsid())
                .append("goodsName", getGoodsName())
                .append("goodsNum", getGoodsNum())
                .append("goodsUnit", getGoodsUnit())
                .append("price", getPrice())
                .append("totalPrice", getTotalPrice())
                .append("remarkShop", getRemarkShop())
                .append("remarkSupply", getRemarkSupply())
                .append("goodsNumReal", getGoodsNumReal())
                .append("realPrice", getRealPrice())
                .append("totalPriceReal", getTotalPriceReal())
                .append("ctime", getCtime())
                .append("status", getStatus())

                .append("refundNum", getRefundNum())
                .append("refundPrice", getRefundPrice())
                .append("refundRemark", getRefundRemark())
                .toString();
    }
}
